# 文件操作 - 方法
# open: 创建一个文件对象, 默认是以只读方式打开文件
# read(n): 读取文件内容, n为读取的字节数, 如果n为负数则读取全部内容
# write(s): 写入内容到文件, s为要写入的字符串
# close: 关闭文件对象

# 文件操作 属性
# name: 文件名, 包含文件的具体路径
# mode: 文件打开模式, 包含'r', 'w', 'a', 'b', 't'等
# closed: 文件是否关闭, 返回True或False
print("-------------------- f1 ------------------------ ")

f = open("test.txt")
print(f.name)  # test.txt
print(f.mode)  # r

# print(f.read(-1))
print(f.read(5))
f.close()  # 关闭文件对象

print("-------------------- f2 ------------------------ ")

try:
    f2 = open(r"C:\Users\moon\Desktop\Sdsxsz1943.txt")  # 以读取模式打开文件, 如果文件不存在则创建
    print(f2.read())  # 读取文件内容, 如果文件不存在则会报错
    print(f2.name)
    f2.close()
except:
    print("File not found or cannot be opened.")
finally:
    print("File operation completed.")



print("-------------------- ReadLine ------------------------ ")
f3 = open("test.txt")
f4 = open("test.txt")

while True:
    text = f3.readline()  # 读取一行内容
    print(text)
    if not text:  # 如果没有内容了, 则退出循环
        break

print("-------------------- readlines ------------------------ ")
texts = f4.readlines()  # 读取所有行内容'
for text in texts:
    print(text)
# print(texts) # ['11111\n', '2222222\n', '333333\n', '4444']

f3.close()


print("-------------------- access mode ------------------------ ")
